/* Universidad del Valle de Guatemala
 * StackArrayList.java
 * Mariana Castillo, 12374
 * Julio Maldonado, 12377
 * Seccion 30, Algoritmos y Estructura de Datos
 * Fecha: 03/07/13
 * IMPLEMENTACION ARRAYLIST*
 */

package hojat4;

import java.util.ArrayList;
public class StackArrayList<E> extends AbstractStack<E> {

ArrayList array = new ArrayList();
    public void push(E item){ // metodo push sirve para introducir elementos a la pila, reibe  como parametro un elemento de tipo E y no devuelve nada.
        array.add(item); 
       }

    public E pop(){ // metodo pop sirve para retirar el ultimo elemento de la pila y almacenarlo en alguna variable, no recibe nada como parametros y devuelve el elemento que retiro.
        E x = (E) array.get(array.size()-1);
        array.remove(x);
        return x;  
       }

    public E peek(){  // metodo peek sirve para saber cual es el ultimo elemento de la pila, no recibe ningun parametro y devuelve el ultimo elemento en la pila
        E x = (E) array.get(array.size()-1);
        return x;
        }

    public int size(){ // este metodo revisa cuantos elementos hay en la pila, no recibe ningun parametro y devuelve el numero de elementos dentro de la pila.
        int x = array.size();
        return x;
    }
    
}
